#include <stdio.h>
#include <signal.h>
#include <unistd.h>

// int flag = 0;

// 易变关键字
volatile int flag=0;

void change(int signo){
    (void) signo;

    flag = 1;
    printf("change flag 0->1, getpid: %d\n", getpid());
}

int main(){
    printf("I am main process, pid is: %d\n", getpid());
    signal(2, change);

    while(!flag); // 主执行流 -- flag 未做任何修改
    printf("我是正常退出的\n");
}
